/**
 * Copyright &copy; 2012-2016 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved.
 */
package com.thinkgem.jeesite.modules.thesis.entity;

import org.hibernate.validator.constraints.Length;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;

import com.thinkgem.jeesite.common.persistence.DataEntity;

/**
 * 论文Entity
 * @author hang
 * @version 2017-01-14
 */
public class TbTalentThesis extends DataEntity<TbTalentThesis> {
	
	private static final long serialVersionUID = 1L;
	private String thesisName;		// 论文名称
	private String firstWhriter;		// 第一作者
	private String correWriter;		// 通讯作者
	private String issueDate;		// 发表年月
	private String publicationName;		// 发表刊物名称
	private String collectionType;		// 收录类型
	private String impactFactor;		// 期刊影响因子
	private String referenceTime;		// 引用次数
	private String remark;		// 备注
	private String material;		// 证明材料
	private Date createTime;		// 创建时间
	private Date updateTime;		// 更新时间
	
	public TbTalentThesis() {
		super();
	}

	public TbTalentThesis(String id){
		super(id);
	}

	@Length(min=0, max=64, message="论文名称长度必须介于 0 和 64 之间")
	public String getThesisName() {
		return thesisName;
	}

	public void setThesisName(String thesisName) {
		this.thesisName = thesisName;
	}
	
	@Length(min=0, max=64, message="第一作者长度必须介于 0 和 64 之间")
	public String getFirstWhriter() {
		return firstWhriter;
	}

	public void setFirstWhriter(String firstWhriter) {
		this.firstWhriter = firstWhriter;
	}
	
	@Length(min=0, max=64, message="通讯作者长度必须介于 0 和 64 之间")
	public String getCorreWriter() {
		return correWriter;
	}

	public void setCorreWriter(String correWriter) {
		this.correWriter = correWriter;
	}
	
	@Length(min=0, max=64, message="发表年月长度必须介于 0 和 64 之间")
	public String getIssueDate() {
		return issueDate;
	}

	public void setIssueDate(String issueDate) {
		this.issueDate = issueDate;
	}
	
	@Length(min=0, max=64, message="发表刊物名称长度必须介于 0 和 64 之间")
	public String getPublicationName() {
		return publicationName;
	}

	public void setPublicationName(String publicationName) {
		this.publicationName = publicationName;
	}
	
	@Length(min=0, max=64, message="收录类型长度必须介于 0 和 64 之间")
	public String getCollectionType() {
		return collectionType;
	}

	public void setCollectionType(String collectionType) {
		this.collectionType = collectionType;
	}
	
	@Length(min=0, max=64, message="期刊影响因子长度必须介于 0 和 64 之间")
	public String getImpactFactor() {
		return impactFactor;
	}

	public void setImpactFactor(String impactFactor) {
		this.impactFactor = impactFactor;
	}
	
	@Length(min=0, max=64, message="引用次数长度必须介于 0 和 64 之间")
	public String getReferenceTime() {
		return referenceTime;
	}

	public void setReferenceTime(String referenceTime) {
		this.referenceTime = referenceTime;
	}
	
	@Length(min=0, max=200, message="备注长度必须介于 0 和 200 之间")
	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}
	
	@Length(min=0, max=200, message="证明材料长度必须介于 0 和 200 之间")
	public String getMaterial() {
		return material;
	}

	public void setMaterial(String material) {
		this.material = material;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}
	
}